package ar.edu.unrn.lia.model;

import java.io.Serializable;

import javax.persistence.Entity;
import javax.persistence.EnumType;
import javax.persistence.Enumerated;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.validation.constraints.NotNull;

import ar.edu.unrn.lia.model.CuotaPreIngreso.Concepto;

@Entity
@Table(name = "recibo_item")
public class ReciboItem extends BaseEntity implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = -3146675378465716439L;

	public ReciboItem() {
		super();
		// TODO Auto-generated constructor stub
	}
	
	

	public ReciboItem(Concepto concepto, Double monto,
			String descripcion) {
		super();
		this.concepto = concepto;
		this.monto = monto;
		this.descripcion = descripcion;
	}



	private Recibo recibo;

	private Concepto concepto;

	private Double monto;

	private String descripcion;

	@ManyToOne
	@JoinColumn(name = "recibo_id", nullable = false)
	@NotNull(message = "{name.notnull}")
	public Recibo getRecibo() {
		return recibo;
	}

	public void setRecibo(Recibo recibo) {
		this.recibo = recibo;
	}

	@NotNull(message = "{name.notnull}")
	@Enumerated(EnumType.STRING)
	public Concepto getConcepto() {
		return concepto;
	}

	public void setConcepto(Concepto concepto) {
		this.concepto = concepto;
	}

	@NotNull(message = "{name.notnull}")
	public Double getMonto() {
		return monto;
	}

	public void setMonto(Double monto) {
		this.monto = monto;
	}

	@NotNull(message = "{name.notnull}")
	public String getDescripcion() {
		return descripcion;
	}

	public void setDescripcion(String descripcion) {
		this.descripcion = descripcion;
	}

}
